﻿using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DataCodeDemo.CamDrives
{
    public interface ICam
    {
        /// <summary>
        /// 获取相机列表信息
        /// </summary>
        /// <returns></returns>
        OperateResult<List<CameraInfos>> GetCameras();

        /// <summary>
        /// 打开相机
        /// </summary>
        /// <param name="camera"></param>
        /// <returns></returns>
        OperateResult OpenCam(CameraInfos camera);

        /// <summary>
        /// 获取图像
        /// </summary>
        /// <returns></returns>
        //OperateResult<ImageInfo> AcquireImage();

        OperateResult<Bitmap> AcquireImage2();

        /// <summary>
        /// 关闭相机
        /// </summary>
        /// <returns></returns>
        OperateResult CloseCam();

        /// <summary>
        /// 打开相机参数设置对话框
        /// </summary>
        /// <param name="parent"></param>
        /// <returns></returns>
        OperateResult ShowPropertyModalDialog( IntPtr parent);
    }
}
